#ifndef VECTOR2D_H
#define VECTOR2D_H

#include <iostream>
#include <math.h>

class Vector2D {
public:
	Vector2D() : x(0.0f), y(0.0f) {}
	Vector2D(float x, float y) : x(x), y(y) {}
	void normalize();
	Vector2D getNormalized();
	float getMagnitude();

	//Operator Overloads
	Vector2D operator+ (Vector2D param);
	Vector2D operator- (Vector2D param);
	Vector2D operator+= (Vector2D param);
	Vector2D operator-= (Vector2D param);

	friend std::ostream& operator<< (std::ostream& out, const Vector2D param);

private:
	float x;
	float y;
};

#endif